Autonomous driving sensing system and method

ABSTRACT

A computer in a vehicle is configured to operate the vehicle in at least one of an autonomous and a semi-autonomous mode. The computer is further configured to detect at least one condition of a roadway being traveled by the vehicle, the condition comprising at least one of a restricted lane, a restricted zone, a construction zone, and accident area, an incline, a hazardous road surface. The computer is further configured to determine at least one autonomous action based on the condition, the at least one autonomous action including at least one of altering a speed of the vehicle, controlling vehicle steering, controlling vehicle lighting, transitioning the vehicle to manual control, and controlling a distance of the vehicle from an object.

BACKGROUND

A vehicle, particularly a vehicle being operated autonomously orsemi-autonomously, may obtain data concerning surrounding conditions viaa variety of mechanisms, e.g., sensors or the like included in thevehicle. Sensor data can provide information concerning environmentalconditions, edges of a road or lanes in a road, etc., and can be used toformulate an appropriate speed for a vehicle, an appropriate path for avehicle, etc. However, existing vehicle sensor data are subject tolimitations with respect to information that may be determinedtherefrom. For example, vehicle sensors may not be aware of upcomingconstruction zones, accident zones, changes in speed limits, changes inavailable roadway lanes, etc. Accordingly, mechanisms for augmentingvehicle sensor data are needed.

DRAWINGS

FIG. 1 is a block diagram of an exemplary autonomous vehicle sensingsystem.

FIG. 2 is a block diagram of a vehicle roadway including sensor markers.

FIG. 3 is a diagram of an exemplary process for an autonomous vehiclesensing system in an autonomous mode.

FIG. 4 is a diagram of an exemplary process for an autonomous vehiclesensing system using marker objects in an autonomous mode.

FIG. 5 is a diagram of an exemplary process for an autonomous vehiclesensing using marker objects system in a manual mode.

DESCRIPTION Introduction

FIG. 1 is a block diagram of an exemplary autonomous vehicle system 100that includes a vehicle 101 provided with one or more sensor datacollectors 110 that operate in conjunction with one or more sensormarkers 160 proximate to a roadway 155 (illustrated in FIG. 2). Acomputing device 105 in the vehicle 101 generally receives collecteddata 115 from one or more data collectors 110, and further includes anautonomous driving module 106, e.g., as a set of instructions stored ina memory of, and executable by a processor of, the computing device 105.

In general, collected data 115 may be used by the vehicle 101 computer105 to make determinations concerning vehicle 101 operations, includingautonomous operations of the vehicle 101. For example, collected data115 may indicate a hazardous road condition, e.g., bumps, ice, lowfriction, etc., a construction zone, a “master stop” order received viaa network 120, etc. The collected data 115 includes data concerning oneor more markers 160, which data 115 may be used by the vehicle 101computer 105 to make determinations concerning vehicle 101 operations,including autonomous operations of the vehicle 101.

For example, the markers 160 may convey information about a roadway 155or portion thereof, possibly including rules for travel in such area ofthe roadway 155, e.g., that a vehicle 101 is nearing or in aconstruction zone, a special lane, e.g., a high-occupancy vehicle (HOV)lane, an area where a special or temporary speed limit is in force, anarea where autonomous control of a vehicle 101 is prohibited, an areawhere autonomous control of a vehicle 101 is permitted and/or required,an area where a normal traffic direction has been reversed, etc. Markers160 may provide information via a variety of mechanisms, such as apattern of blocks, dots, letters, numbers, etc., detectable by a cameradata collectors 110, by a radio frequency (RF) signal detectable by aradio data collector 110, etc.

Exemplary System Elements

A vehicle 101 includes a vehicle computer 105 that generally includes aprocessor and a memory, the memory including one or more forms ofcomputer-readable media, and storing instructions executable by theprocessor for performing various operations, including as disclosedherein. For example, the computer 105 generally includes, and is capableof executing, instructions to select an autonomous operation mode, toadjust an autonomous operation mode, to change an autonomous operationmode, etc., of the vehicle 101.

Further, the computer 105 may include more than one computing device,e.g., controllers or the like included in the vehicle 101 for monitoringand/or controlling various vehicle components, e.g., an engine controlunit (ECU), transmission control unit (TCU), etc. The computer 105 isgenerally configured for communications on a controller area network(CAN) bus or the like. The computer 105 may also have a connection to anonboard diagnostics connector (OBD-II). Via the CAN bus, OBD-II, and/orother wired or wireless mechanisms, the computer 105 may transmitmessages to various devices in a vehicle and/or receive messages fromthe various devices, e.g., controllers, actuators, sensors, etc.,including data collectors 110. Alternatively or additionally, in caseswhere the computer 105 actually comprises multiple devices, the CAN busor the like may be used for communications between devices representedas the computer 105 in this disclosure.

In addition, the computer 105 may be configured for communicating withthe network 120, which, as described below, may include various wiredand/or wireless networking technologies, e.g., cellular, Bluetooth,wired and/or wireless packet networks, etc. Further, the computer 105,e.g., in the module 106, generally includes instructions for receivingdata, e.g., from one or more data collectors 110 and/or a human machineinterface (HMI), such as an interactive voice response (IVR) system, agraphical user interface (GUI) including a touchscreen or the like, etc.

Generally included in instructions stored in and executed by thecomputer 105 is an autonomous driving module 106. Using data received inthe computer 105, e.g., from data collectors 110, the server 125, etc.,the module 106 may control various vehicle 101 components and/oroperations without a driver to operate the vehicle 101. For example, themodule 106 may be used to regulate vehicle 101 speed, acceleration,deceleration, steering, distance between vehicles and/or amount of timebetween vehicles, lane-change minimum gap between vehicles,left-turn-across-path minimum, time-to-arrival, intersection (withoutsignal) minimum time-to-arrival to cross the intersection, etc.

Data collectors 110 may include a variety of devices. For example,various controllers in a vehicle may operate as data collectors 110 toprovide collected data 115 via the CAN bus, e.g., collected data 115relating to vehicle speed, acceleration, etc. Further, sensors or thelike, global positioning system (GPS) equipment, etc., could be includedin a vehicle and configured as data collectors 110 to provide datadirectly to the computer 105, e.g., via a wired or wireless connection.Data collectors 110 could also include sensors or the like, e.g.,medium-range and long-range sensors, for detecting, and possibly alsoobtaining information from, markers 160, e.g., as described furtherbelow, as well as other conditions outside the vehicle 101. For example,sensor data collectors 110 could include mechanisms such as radios,RADAR, lidar, sonar, cameras or other image capture devices, that couldbe deployed to detect markers 160 and/or obtain other collected data 115relevant to autonomous operation of the vehicle 101, e.g., measure adistance between the vehicle 101 and other vehicles or objects, todetect other vehicles or objects, and/or to detect road conditions, suchas curves, potholes, dips, bumps, changes in grade, etc.

A memory of the computer 105 generally stores collected data 115.Collected data 115 may include a variety of data collected in a vehicle101 from data collectors 110, including data 115 obtained from one ormore markers 160. Examples of collected data 115 are provided above andbelow, e.g., with respect to markers 160, and moreover, data 115 mayadditionally include data calculated therefrom in the computer 105. Ingeneral, collected data 115 may include any data that may be gathered bya collection device 110 and/or computed from such data. Accordingly,collected data 115 could include a variety of data 115 related tovehicle 101 operations and/or performance, as well as data related to inparticular relating to motion of the vehicle 101. For example, inaddition to data 115 obtained from a marker 160 such as discussed below,collected data 115 could include data concerning a vehicle 101 speed,acceleration, braking, lane changes and or lane usage (e.g., onparticular roads and/or types of roads such as interstate highways),average distances from other vehicles at respective speeds or ranges ofspeeds, and/or other data 115 relating to vehicle 101 operation.

The network 120 represents one or more mechanisms by which a vehiclecomputer 105 may communicate with a remote server 125 and/or a userdevice 150. Accordingly, the network 120 may be one or more of variouswired or wireless communication mechanisms, including any desiredcombination of wired (e.g., cable and fiber) and/or wireless (e.g.,cellular, wireless, satellite, microwave, and radio frequency)communication mechanisms and any desired network topology (or topologieswhen multiple communication mechanisms are utilized). Exemplarycommunication networks include wireless communication networks (e.g.,using Bluetooth, IEEE 802.11, etc.), local area networks (LAN) and/orwide area networks (WAN), including the Internet, providing datacommunication services.

The server 125 may be one or more computer servers, each generallyincluding at least one processor and at least one memory, the memorystoring instructions executable by the processor, including instructionsfor carrying out various steps and processes described herein. Theserver 125 may include or be communicatively coupled to a data store 130for storing collected data 115 received from one or more vehicles 101.

Further, the server 125 could be used to configure one or more markers160. For example, a marker 160 could include an RF transmitter, asmentioned above. The server 125 could be in communication with themarker 160 via the network 120, and could provide a message or messagesto be transmitted by the marker 160. For example, a marker 160 could belocated proximate to an area of a roadway 155 where a speed limit may bechanged. Further, one or more markers 160 could be virtual, i.e.,information supplied by a supplied to a vehicle 101 by communicationfrom a server 125 and/or another vehicle 101.

In any case, for a physical or a virtual marker 160, the server 125could be used to indicate various information, such as a speed limitthat the marker 160 should communicate for reception by radio datacollectors 110 in vehicles 101. Likewise, the server 125 could configurean electronic road sign or the like serving as a marker 160, e.g., toindicate presence of emergency workers, construction workers, lawenforcement personnel, etc. Various instructions that the server 125could transmit to one or more markers 160 could be stored in the datastore 130. For example, the server 125 could be configured to sendinstructions to configure a message provided by a marker 160 based on atime of day, a weather condition, a flag in the data store 130indicating a construction zone, accident zone, etc. associated with themarker 160, etc. Alternatively or additionally, an example of a virtualmarker includes the server 125 communicating GPS data, i.e., a latitudeand longitude, where a construction zone begins.

A user device 150 may be any one of a variety of computing devicesincluding a processor and a memory, as well as communicationcapabilities. For example, the user device 150 may be a portablecomputer, tablet computer, a smart phone, etc. that includescapabilities for wireless communications using IEEE 802.11, Bluetooth,and/or cellular communications protocols. Further, the user device 150may use such communication capabilities to communicate via the network120 including with a vehicle computer 105. A user device 150 couldcommunicate with a vehicle 101 computer 105 the other mechanisms, suchas a network in the vehicle 101, via known protocols such as Bluetooth,etc. Accordingly, a user device 150 may be used to carry out certainoperations herein ascribed to a data collector 110, e.g., voicerecognition functions, cameras, global positioning system (GPS)functions, etc., in a user device 150 could be used to provide data 115to the computer 105. Further, a user device 150 could be used to providea human machine interface (HMI) to the computer 105.

As seen in FIG. 2, one or more markers 160 may be proximate to a roadway155. In this context, the meaning of “proximate” includes being embeddedor fixed in, or being located on or above, e.g., on a post within a fewfeet of, a surface of a roadway 155 or a surface near a roadway 155,e.g., on, near, or adjacent to a roadway 155 shoulder, etc. Further, amarker 160 could be proximate to a roadway 155 by being suspended abovethe roadway 155, e.g., on a side or underside of a bridge, on astructure configured to suspend signs over the roadway, etc. In general,for a marker 160 to be proximate to a roadway 155 means that the marker160 is located such that the marker 160 is detectable by one or moredata collectors 110 in a vehicle 101 traversing the roadway 155 withrespect to which the marker 160 is proximate.

In general, two kinds of markers 160 are possible in the context of thesystem 100: active markers 160 and passive markers 160. An active marker160, e.g., a radio transponder, a virtual marker, etc., actively sendsinformation to be received by a data collector 110 and may also beconfigured to receive information via the network 120, and/or transmitthis information continuously or upon request for information by acomputing device 105. A passive marker 160, e.g., a road sign, providesinformation to be detected and read by a data collector 110, but thepassive marker 160 is not capable of taking action to initiate acommunication with the data collector 110.

As stated above, markers 160 may provide information via a variety ofmechanisms, such as a pattern of blocks, dots, letters, numbers, etc.,detectable by a camera data collectors 110, by a radio frequency (RF)signal detectable by a radio data collector 110, etc. Accordingly, amarker 160 can be a sign, paint or etching in a roadway 155, or thelike, configured to be read by a camera data collector 110, lidar, etc.,and/or could include a radio device or the like for sending signals to aradio data collector 110. Further, a marker 160 could include a magnetor other material configured to be detected by a sensor data collector110.

In some cases, a marker 160 may be temporarily placed proximate to aroadway 155. For example, in a construction zone and/or prior to a placewhere a construction zone begins on a roadway 155, one or more markers160 may be used to indicate the presence of the construction zone and/orchanges to the roadway 155. For example, in or near a construction zoneof a roadway 155, one or more lanes of the roadway 155 may becomeunavailable, a roadway 155 shoulder may become unavailable, a speedlimit may change, lanes may shift, etc. Likewise, law enforcement and/orrescue personnel may use temporary markers 160 to indicate the presenceof an accident, hazardous road conditions such as icing, flooding, etc.

Exemplary Process Flows

FIG. 3 is a diagram of an exemplary process for an autonomous vehicle101 sensing system using marker objects in an autonomous mode.

The process 300 begins in a block 305, in which a vehicle 101 conductsautonomous driving operations. That is, the vehicle 101 is operatedpartially or completely autonomously, i.e., a manner partially orcompletely controlled by the autonomous driving module 106, which may beconfigured to operate the vehicle 101 according to collected data 115.For example, all vehicle 101 operations, e.g., steering, braking, speed,etc., could be controlled by the module 106 in the computer 105. It isalso possible that, in the block 305, the vehicle 101 may be operated ina partially autonomous (i.e., partially manual, fashion, where someoperations, e.g., braking, could be manually controlled by a driver,while other operations, e.g., steering, could be controlled by thecomputer 105. Further, it is possible that the process 300 could becommenced at some point after vehicle 101 driving operations begin,e.g., when manually initiated by a vehicle occupant through a userinterface of the computer 105. In some implementations of the system100, a vehicle 101 operates in an autonomous or semi-autonomous modeonly where markers 160 indicate that the vehicle 101 may do so, e.g.,that the vehicle 101 is in a zone or area where autonomous operation, orat least certain autonomous operations constituting semi-autonomousoperation of the vehicle 101, is permitted.

In the block 310, the computer 105 determines whether the process 300should continue. For example, the process 300 may end if autonomousdriving operations end and a driver resumes manual control, if thevehicle 101 is powered off, etc. In any case, if the process 300 shouldnot continue, the process 300 ends following the block 310. Otherwise,the process 300 proceeds to a block 315.

In the block 315, the computer 105 determines whether any data 115indicating an anomalous, changed, and/or particular condition isdetected according to collected data 115. Examples of data 115indicating such a condition include:

Restricted lane: possibly using marker objects 160, discussed in moredetail above and below, but also according to a detected marking on theroadway 155, a captured image of a sign, a barrier, etc., collected data115 may indicate that a roadway 155 lane is restricted from travel byall vehicles 101, e.g., because of construction, is “HOV,” i.e.,available only to vehicles 101 carrying two or more, three or more, etc.passengers, permits a direction of travel only for a specified time ortimes of day, is limited to certain types of vehicles 101, e.g., withouttrailers, having no more than two axles, etc.

Restricted zone: in addition to detecting that one or more lanes of aroadway 155 are restricted from travel, e.g., as described in thepreceding paragraph, data 115 and/or data received from the server 125,could indicate that an entire portion of a roadway 155, a certaingeographic area, e.g., defined according to latitude and longitudegeo-coordinates, etc., was restricted from travel, or was subject tolimitations, e.g., special speed limit, limitations to emergencyvehicles 101 or other types of vehicles 101, such as four-wheel drive orall-wheel drive vehicles 101, vehicles 101 where some or all vehicle 101operations are conducted autonomously, etc. For example, weatherconditions, environmental hazards such as chemical spills, fires, etc.,could make a roadway 155 and/or geographic zone dangerous for travel.Accordingly, the server 125 and/or messages from another vehicle 101could indicate that a roadway 155 and/or geographic zone was restrictedor limited for travel.

A restricted zone could be indicated by one or more markers 160, use ofwhich is discussed further below with respect to FIGS. 4 and 5. Forexample, a restricted zone could include a construction site. Theconstruction site could be indicated by one or more markers 160.However, a construction site could also be determined according tocollected data 115 relating to signs, barriers, roadway 155 markings,etc. indicating a construction site. Further, a construction site couldbe indicated in one or more messages from another vehicle 101 and/orinformation provided to a vehicle 101 from the server 125.

Incline detection: data 115, e.g., detecting a vehicle 101 level, changein altitude, providing a vehicle 101 location on a map where atopography is known, etc., may indicate that a vehicle 101 is traversinga portion of the roadway 155 that includes a steep and/or long incline(i.e., uphill travel) or decline (i.e., downhill travel).

Road surface detection: data 115 may indicate a change in a roadway 155surface and/or a roadway 155 surface potentially presenting a dangercondition. For example, data 115 relating to braking, acceleration,traction control, etc., as well as data 115 from sensor data collectors110 such as radar, lidar, cameras, etc., may indicate that a roadway 155is rough and/or uneven, and/or dangerously covered or coated, e.g., icy,wet, oil covered, etc.

Marker detection: as described further below with respect to the process400, a detected marker 160 could indicate a condition warranting actionby the computer 105.

If no anomalous, changed, and/or particular condition (collectively, a“notable condition”) is detected in the block 315, then the process 300returns to the block 305. Otherwise, following the block 315, in a block320, the computer 105 attempts to determine an action for the vehicle101 based on a condition or conditions detected as described above withrespect to the block 315. If an action or actions can be determined,then a block 325 is executed next. Otherwise, the process 300 proceedsto a block 330.

Examples of actions that may be determined in the block 320 may relateto the exemplary conditions discussed above with respect to the block315. For example, if one or more restricted lanes are detected in aroadway 155, then the computer 105 may determine that the vehicle 101should maintain a lane, change lanes, exit a roadway 155, etc.

Likewise, if a restricted zone is detected, the computer 105 maydetermine one or more actions for the vehicle 101. For instance, if therestricted zone is detected according to information from the server125, the server 125 may further provide a “Master Stop” instruction orthe like, i.e., an instruction for all vehicles 101, or at leastvehicles 100 one of a certain type, e.g., non-autonomous, non-emergency,etc., to stop operations. Further, the server 125 may provideinstructions concerning how to stop operations, e.g., slow and pull tothe side of a roadway 155, proceed to an intersection or exit to leavethe roadway 155, etc. In addition, if collected data 115 indicates arestricted zone, the computer 105 may determine an appropriate course ofaction, e.g., traveling around the restricted zone, stopping and pullingto a side of a roadway, etc. Moreover, where a particular type ofrestricted zone is detected, e.g., a construction area, the computer 105could conduct vehicle 101 operations appropriately, e.g., by observingspeed limits appropriate for a construction area, changing lanes, oreven handing off full manual control to a vehicle 101 operator.

In the example where a steep and/or long incline or decline is detected,e.g., a vertical rise over a horizontal distance exceeds a predeterminedthreshold, the computer 105 may take action to adjust vehicle 101powertrain settings, e.g., to improve braking, engine performance,electrical charging performance, etc. for example, where a vehicle 101is likely to traverse a relatively long down-hill portion of the roadway155, the computer 105 could command vehicle 101 powertrain settings forselecting a lower gear in a vehicle 101 transmission, thereby preventingor mitigating the phenomenon known as brake fade. Likewise, anelectric-powered vehicle 101 could use slope information to adjust acharging mechanism taking into account a length and slope of a hill.

In the example where an anomalous road surface condition is detected,the computer 105 may determine an action appropriate for the detectedcondition. For example, if a roadway 155 is detected to be wet, speedadjustments may be appropriate for reduced friction, or the likelihoodthat an uneven road surface, e.g., potholes, may not be detected becausethey are filled with water. Likewise, a roadway 155 covered with ice,snow, etc. may have reduced friction and/or cover unevenness. Certainunevenness may be detected according to collected data 115 relating toother vehicles 101, e.g., a presence and size of a pothole or the likemay be determined by detecting a splash of water from a second vehicle101 driving through the pothole. In any event, modifications to vehicle101 speed, direction, suspension settings, etc., may be appropriatedepending on a road surface condition.

The example of taking action in an autonomous or semi-autonomous vehicle101 based on one or more markers 160 is discussed further below withrespect to the process 400.

Continuing with the process 300, if no notable condition is detected,then the process returns to the block 305. Otherwise, in a block 325, anaction determined in the block 320 is implemented. The process 300 thenproceeds to a block 330.

It should be noted that the computer 105 may determine an autonomousaction for a vehicle 101, e.g., braking, speed control, turning, etc.However, the computer 105 may further determine, in the block 330, toreturn full manual control of the vehicle 101 to the human operatorwhere the vehicle 101 is being operated fully or semi-autonomously. Forexample, road conditions could be too hazardous for autonomous travel,the server 125 could have provided a message to cease autonomous orsemi-autonomous operations, confidence in sensor data collectors 110could be below a predetermined threshold, etc. Accordingly, in the block330, the computer 105 determines whether manual control of the vehicle101 should be returned to a human operator. If so, the block 335 isexecuted next. Otherwise, the process 300 returns to the block 305.

In the block 335, the computer 105 ceases autonomous and/orsemi-autonomous operations of the vehicle 101.

Following the block 335, the process 300 ends.

FIG. 4 is a diagram of an exemplary process for an autonomous vehicle101 sensing system using marker objects 160 in an autonomous mode.

The process 400 begins in a block 405, in which a vehicle 101 conductsautonomous driving operations, e.g., as described above concerning theblock 305 in the process 300.

In the block 410, the computer 105 determines whether the process 400should continue. For example, the process 400 may end if autonomousdriving operations end and a driver resumes manual control, if thevehicle 101 is powered off, etc. In any case, if the process 400 shouldnot continue, the process 400 ends following the block 410. Otherwise,the process 400 proceeds to a block 415.

In the block 415, the computer 105 determines whether one or moremarkers 160 have been detected. As described above, data collectors 110provide collected data 115 to the computer 105. The computer 105 isconfigured to analyze the collected data 115 to determine whetherpresence of a marker 160 is indicated. For example, collected data 115could include data received in an RF transmission, image data 115 from asign marker 160, etc. If a marker 160 has been detected, then theprocess 400 proceeds to a block 420. Otherwise, the process 400 returnsto the block 405.

In the block 420, the computer 105 determines whether informationreceived from the one or more markers 160 detected in the block 415warrants an action by the vehicle 101. That is, to determine whether totake action based on a marker 160 in the context of the process 400, thecomputer 105 must not only detect the marker 160, but must also obtaininformation, e.g., interpret collected data 115, from the marker 160. Asmentioned above, such information can be provided via a variety ofmechanisms, e.g., RF transmission from the marker 160, a pattern ofdots, bars, or other shapes on a marker 160, etc.

By such mechanisms, a variety of information may be provided from amarker 160 that may be used by the computer 105 to determine whether anaction in or by the vehicle 101 is warranted. For example, a marker 160can provide information concerning a speed limit change, a reduction innumber of available lanes, hazardous road conditions such as icing orflooding, etc. Accordingly, upon receiving such information, thecomputer 105 may determine that action is appropriate, e.g., reducingspeed to conform to a speed limit, changing lanes, slowing to anappropriate speed for possible flood conditions, changing a distancebetween the vehicle 101 and another vehicle, etc. However, in someinstances, the computer 105 may determine that, although a marker 160has been detected, no action is warranted. For example, a marker 160 mayindicate a speed limit change, or unavailability of a particular lane ina roadway, where a vehicle 101 is traveling under the new speed limit,in an available lane, etc. If an action is warranted based on the one ormore detected markers 160, then the process 400 proceeds to a block 425.Otherwise, the process 400 proceeds to a block 430.

In the block 425, the computer 105 implements the action determined inthe block 420. For example, a speed, distance from other vehicles, laneof travel, etc., may be adjusted as described above.

In the block 430, which may follow either of the block 420 or 425, thecomputer 105 determines whether to transition the vehicle 101 to manualcontrol. Such transition may be determined according to user input, butalternatively or additionally the computer 105 could be configured toreturn the vehicle 101 to manual control of an operator based on one ormore detected markers 160. For example, if a detected marker 160indicates that the vehicle 101 is approaching a construction zone,accident area, etc., the computer 105 could be configured to transitionthe vehicle 101 to manual control. If manual control is to be resumed,the process 400 proceeds to a block 435. Otherwise, the process 400returns to the block 405.

In the block 435, the computer 105 transitions the vehicle 101 to manualcontrol. For example, the computer 105 may use a human machine interface(HMI) or the like such as mentioned above to alert a vehicle 101operator that manual control is being implemented, and may ceaseautonomous or semi-autonomous operations upon indication of acceptanceof manual control by the vehicle 101 operator. Following the block 435,the process 400 ends. When the process 400 ends following the block 435,it is possible that the process 500, discussed below, in which thevehicle 101 is operated manually, may commence.

FIG. 5 is a diagram of an exemplary process for an autonomous vehicle101 sensing system using marker objects 160 in a manual mode. A vehicle101 may be in a manual mode due to an operator selection, limitedcapabilities of the vehicle 101, indications from marker objects 160,etc. For example, in one implementation of the system 100, a vehicle 101is in a manual mode unless it detects marker objects 160 indicating thatthe vehicle 101 may be in a semi-autonomous or autonomous mode. In anycase, the process 500 begins in a block 505, in which a vehicle 101 isoperated manually, i.e., in a conventional manner by a human operator.

In the block 510, the computer 105 determines whether the process 500should continue. For example, the computer 105 may receive input toinitiate autonomous operations. In any case, if the process 500 shouldnot continue, the process 500 ends following the block 510, whereupon itis possible that the process 500, described above, may be initiated.Otherwise, the process 500 proceeds to a block 515.

In the block 515, in a manner similar to the block 415 described above,the computer 105 determines whether one or more markers 160 have beendetected. If a marker 160 has been detected, then the process 500proceeds to a block 520. Otherwise, the process 500 returns to the block505.

In the block 520, the computer 105 determines whether informationreceived from the one or more markers 160 detected in the block 515warrants an action by the vehicle 101, e.g., in a similar fashion asdescribed above concerning the block 420. If an action is warrantedbased on the one or more detected markers 160, then the process 500proceeds to a block 525. Otherwise, the process 500 proceeds to a block530.

In the block 525, the computer 105 suggests the action determined in theblock 520, e.g., according to an HMI such as described above. Forexample, adjusting a speed, distance from other vehicles, lane oftravel, etc., may be recommended via an HMI message, e.g., textual on adisplay, audio, etc.

In the block 530, which follows the block 525, the computer 105determines whether to transition the vehicle 101 to autonomous control.Such transition may be determined according to user input, butalternatively or additionally the computer 105 could be configured toplace the vehicle 101 under autonomous or semi-autonomous control basedon one or more detected markers 160. For example, if a detected marker160 indicates that the vehicle 101 is approaching a construction zone,accident area, etc., the computer 105 could be configured to control thespeed of the vehicle 101 and/or vehicle 101 steering. Moreover, wherethe block 530 is reached following the block 520, the computer 105 maysimply determine whether autonomous or semi-autonomous control isappropriate according to a variety of bases, e.g., collected data 115,user input, etc. If autonomous control is to be resumed, the process 500proceeds to a block 535. Otherwise, the process 500 returns to the block505.

In the block 535, the computer 105 transitions the vehicle 101 toautonomous or semi-autonomous control. For example, the computer 105 mayuse a human machine interface (HMI) or the like such as mentioned aboveto alert a vehicle 101 operator that autonomous are semi-autonomouscontrol is being implemented, and may cease manual or semi-manualoperations upon indication of acceptance of autonomous control by thevehicle 101 operator. Alternatively, the computer 105 could simplyimplement an action autonomously, e.g., braking, acceleration, steering,activating exterior lights on the vehicle 101, etc. Following the block535, the process 500 ends. When the process 500 ends following the block535, it is possible that the processes 300 and/or 400, discussed above,in which the vehicle 101 is operated autonomously, may commence.

CONCLUSION

Computing devices such as those discussed herein generally each includeinstructions executable by one or more computing devices such as thoseidentified above, and for carrying out blocks or steps of processesdescribed above. For example, process blocks discussed above areembodied as computer-executable instructions.

Computer-executable instructions may be compiled or interpreted fromcomputer programs created using a variety of programming languagesand/or technologies, including, without limitation, and either alone orin combination, Java™, C, C++, Visual Basic, Java Script, Perl, HTML,etc. In general, a processor (e.g., a microprocessor) receivesinstructions, e.g., from a memory, a computer-readable medium, etc., andexecutes these instructions, thereby performing one or more processes,including one or more of the processes described herein. Suchinstructions and other data may be stored and transmitted using avariety of computer-readable media. A file in a computing device isgenerally a collection of data stored on a computer readable medium,such as a storage medium, a random access memory, etc.

A computer-readable medium includes any medium that participates inproviding data (e.g., instructions), which may be read by a computer.Such a medium may take many forms, including, but not limited to,non-volatile media, volatile media, etc. Non-volatile media include, forexample, optical or magnetic disks and other persistent memory. Volatilemedia include dynamic random access memory (DRAM), which typicallyconstitutes a main memory. Common forms of computer-readable mediainclude, for example, a floppy disk, a flexible disk, hard disk,magnetic tape, any other magnetic medium, a CD-ROM, DVD, any otheroptical medium, punch cards, paper tape, any other physical medium withpatterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any othermemory chip or cartridge, or any other medium from which a computer canread.

In the drawings, the same reference numbers indicate the same elements.Further, some or all of these elements could be changed. With regard tothe media, processes, systems, methods, etc. described herein, it shouldbe understood that, although the steps of such processes, etc. have beendescribed as occurring according to a certain ordered sequence, suchprocesses could be practiced with the described steps performed in anorder other than the order described herein. It further should beunderstood that certain steps could be performed simultaneously, thatother steps could be added, or that certain steps described herein couldbe omitted. In other words, the descriptions of processes herein areprovided for the purpose of illustrating certain embodiments, and shouldin no way be construed so as to limit the claimed invention.

Accordingly, it is to be understood that the above description isintended to be illustrative and not restrictive. Many embodiments andapplications other than the examples provided would be apparent to thoseof skill in the art upon reading the above description. The scope of theinvention should be determined, not with reference to the abovedescription, but should instead be determined with reference to theappended claims, along with the full scope of equivalents to which suchclaims are entitled. It is anticipated and intended that futuredevelopments will occur in the arts discussed herein, and that thedisclosed systems and methods will be incorporated into such futureembodiments. In sum, it should be understood that the invention iscapable of modification and variation and is limited only by thefollowing claims.

All terms used in the claims are intended to be given their broadestreasonable constructions and their ordinary meanings as understood bythose skilled in the art unless an explicit indication to the contraryin made herein. In particular, use of the singular articles such as “a,”“the,” “said,” etc. should be read to recite one or more of theindicated elements unless a claim recites an explicit limitation to thecontrary.

1. A system comprising a computer in a vehicle, the computer beingconfigured to operate the vehicle in at least one of an autonomous and asemi-autonomous mode, and further configured to: detect at least onecondition of a roadway being traveled by the vehicle, the conditioncomprising at least one of a restricted lane, a restricted zone, aconstruction zone, and accident area, an incline, a hazardous roadsurface; and determine at least one autonomous action based on thecondition, the at least one autonomous action including at least one ofaltering a speed of the vehicle, controlling vehicle steering,controlling vehicle lighting, transitioning the vehicle to manualcontrol, and controlling a distance of the vehicle from an object. 2.The system of claim 1, wherein the computer is further configured toimplement the at least one autonomous action.
 3. The system of claim 1,wherein the wherein the computer is further configured to detect thecondition using data obtained via at least one of a radiofrequencytransmission, a camera image, and lidar.
 4. The system of claim 1,wherein the computer is further configured to detect a marker, whereinthe condition is detected using the marker.
 5. The system of claim 4,wherein the computer is further configured to detect at least one secondmarker proximate to the roadway, and to obtain data from each of themarkers.
 6. The system of claim 4, wherein the marker is a virtualmarker.
 7. A system comprising a computer in a vehicle, the computerbeing configured to operate the vehicle in at least one of an autonomousand a semi-autonomous mode, and further configured to: detect a markerproximate to a roadway being traveled by the vehicle; obtain data fromthe marker; and determine to implement at least one autonomous actionbased on the marker.
 8. The system of claim 7, wherein the computer isfurther configured to implement the autonomous action.
 9. The system ofclaim 7, wherein the at least one autonomous action is at least one ofaltering a speed of the vehicle, controlling vehicle steering,controlling vehicle lighting, transitioning the vehicle to manualcontrol, and controlling a distance of the vehicle from an object. 10.The system of claim 7, wherein the data is provided from the marker viaat least one of a radiofrequency transmission, a camera image, andlidar.
 11. The system of claim 7, wherein the computer is furtherconfigured to detect at least one second marker proximate to theroadway, and obtaining data from each of the markers.
 12. The system ofclaim 7, wherein the data indicates at least one of a restricted lane, arestricted zone, a construction zone, and accident area, an incline, ahazardous road surface.
 13. The system of claim 7, wherein the marker isa virtual marker.
 14. A method implemented in a computer in a vehicle,the computer being configured to operate the vehicle in at least one ofan autonomous and a semi-autonomous mode, the method comprising:detecting a marker proximate to a roadway being traveled by the vehicle;obtaining data from the marker; and determining to implement at leastone autonomous action based on the marker.
 15. The method of claim 14,further comprising implementing the autonomous action.
 16. The method ofclaim 14, wherein the at least one autonomous action is at least one ofaltering a speed of the vehicle, controlling vehicle steering,controlling vehicle lighting, transitioning the vehicle to manualcontrol, and controlling a distance of the vehicle from an object. 17.The method of claim 14, wherein the data is provided from the marker viaat least one of a radiofrequency transmission, a camera image, andlidar.
 18. The method of claim 14, further comprising detecting at leastone second marker proximate to the roadway, and obtaining data from eachof the markers.
 19. The method of claim 14, wherein the data indicatesat least one of a restricted lane, a restricted zone, a constructionzone, and accident area, an incline, a hazardous road surface.
 20. Themethod of claim 14, wherein the marker is a virtual marker.